This invention relates to improvements in image processing systems and methods particularly those which produce and manipulate images of three dimensional objects.
In our co-pending U.K. patent application No. 8408114 (UK publication number 2137856) there is described a video signal processing system which manipulates video signals representing characters so that, for example, there is produced the effect of a change in size or orientation of that character. The manipulated character can then be output so that it forms part of an image.
To allow greater flexibility in the system the video signals representing each character are stored in a small patch of addresses (called a tile) in a frame store. Several of these tiles can be stored in one frame store thus reducing the amount of storage required. Each tile can then be accessed individually and manipulated in a desired manner and then written into the correct addresses in the output frame store. The manipulation is done using a manipulator as described in co-pending U.K. application publication number 2119594. Prior to manipulation an individual tile of video signals representing a character is read into a small fast access store to provide greater access speeds. The provision of this store, the relatively small number of pixels in each tile and the speed of the manipulator allows many characters to be manipulated within a single field time.
Although this system provides flexibility of processing the use of only two dimensional characters limits its applications. There are many field in which is is desirable to be able to produce and manipulate images of three dimensional objects. Two such fields are video production and in medical imaging.
In the video field, for example, in certain simulator systems, there is a requirement for a system which could produce an image of a three dimensional object and which could manipulate the image so that changes in orientation and position of the object can be seen. For example, if a simulated scene consisted of a seascape and a ship it would enhance the life like effect if the ship could be shown say turning and moving away or towards the observer. Obviously as the ship turns parts of the ship that were previously obscured would come into view and so signals representing the whole exterior of the ship need to be available. The prior art method of producing this effect has been to take video pictures of a model of the object at say 1.degree. of turn intervals and then storing them and outputting in sequence. Obtaining video pictures in this manner is time consuming and expensive and the resulting image can show jerkiness as the object turns.
In medical imaging systems scanners such as CT or MRI scanners can produce video signals representing sections of the part of the patients body scanned. It would aid greatly diagnosis and preparation of treatment if these signals could be processed so that the part of the body scanned would appear as an image and if this image could then be manipulated so that part of the patient could be seen but with a different orientation to the viewer.
The creation of three dimensional images from signals obtained in this form from medical scanners has been achieved by using known algorithms, but this involves a large number of calculations and can take several hours and produces rather jagged images. Once the image has been produced the manipulation to change the apparent position of view has to be performed and there are several methods for doing this. These methods are designed to reduce the signals representing the solid object in such a way as to produce a data format that can be handled more easily. In the boundary representation method the object is defined as a space enclosed by a collection of surface primitives such as cylinders, spheres and cones which produces the required data format but this method breaks down if a gap is inadvertently introduced in the surface. A second method is the constructive solid geometry where solid primitives are used instead of the surfaces but in this case the processing is slow. One method that partially solves the problem of the time taken to manipulate the image is one in which the object is subdivided recursively in a series of cubes to produce a data structure which is in the format for a modular processor. An example of this type of processor is the Solid Engines (TM) produced by Phoenix Data Systems of Albany, USA. Although this speeds up the manipulating of the image it may be inappropriate for some applications. A further discussion of the above methods can be found in a paper entitled "The Solids Engine: A processor for Interactive Solid Modelling" given by Dr. D. J. Meagher at Nicograph 84.